combobox: cleanup allocation of children in list mode
authorCosimo Cecchi <cosimoc@gnome.org>
Tue, 31 Jan 2012 23:45:09 +0000 (18:45 -0500)
committerCosimo Cecchi <cosimoc@gnome.org>
Wed, 1 Feb 2012 01:30:42 +0000 (20:30 -0500)
Instead of setting the same values for child allocation in different
places, just do it once.

gtk/gtkcombobox.c

index d72066722ee9be2aeaca097194698ea9e09bc66c..b9b6f5454e7631f8882527cc9248cbbe54d57c4e 100644 (file)
@@ -2681,18 +2681,14 @@ gtk_combo_box_size_allocate (GtkWidget     *widget,
       if (is_rtl)
         child.x = button_allocation.x + button_allocation.width;
       else
-        child.x = allocation->x;
+        child.x = allocation->x + padding.left + border_width;
 
-      child.y = allocation->y;
-      child.width = allocation->width - button_allocation.width - (padding.left + padding.right);
-      child.height = button_allocation.height;
+      child.y = allocation->y + padding.top + border_width;
+      child.width = allocation->width - button_allocation.width - (2 * border_width + padding.left + padding.right);
+      child.height = button_allocation.height - 2 * border_width;
 
       if (priv->cell_view_frame)
         {
-          child.x += padding.left + border_width;
-          child.y += padding.top + border_width;
-          child.width = MAX (1, child.width - (2 * border_width) - (padding.left + padding.right));
-          child.height = MAX (1, child.height - (2 * border_width) - (padding.top + padding.bottom));
           gtk_widget_size_allocate (priv->cell_view_frame, &child);
 
           /* restrict allocation of the child into the frame box if it's present */
@@ -2709,13 +2705,6 @@ gtk_combo_box_size_allocate (GtkWidget     *widget,
               child.height -= (2 * border_width) + frame_padding.top + frame_padding.bottom;
             }
         }
-      else
-        {
-          child.x += padding.left + border_width;
-          child.y += padding.top + border_width;
-          child.width -= (2 * border_width) - (padding.left + padding.right);
-          child.height -= (2 * border_width) - (padding.top + padding.bottom);
-        }
 
       if (gtk_widget_get_visible (priv->popup_window))
         {